package model

import "time"

// 用户模型
type User struct {
	// 主键
	ID uint64 `orm:"column(id);pk;auto;description(主键)"`
	// 用户唯一标识
	Uuid string `orm:"unique;column(uuid);size(60);description(用户唯一标识);default:('')"`
	// 密码的盐
	Slat string `orm:"unique;column(slat);size(60);description(密码的盐);default:('')"`
	// 用户名
	UserName string `orm:"unique;column(username);size(100);description(用户名);default:('')"`
	// 用户账号（数字账号）
	Account string `orm:"unique;column(account);size(100);description(用户账号);default:('')"`
	// 昵称
	NickName string `orm:"column(nickname);size(100);description(昵称);default:('')"`
	// 手机
	Telephone string `orm:"unique;column(telephone);size(20);description(手机);default:('')"`
	// 地址
	Address string `orm:"column(address);size(20);description(地址);default:('')"`
	// 密码
	Password string `orm:"column(password);size(60);description(密码);default:('')"`
	// 签名
	Sign string `orm:"column(sign);size(200);description(签名);default:('')"`
	// 背景
	BgImg string `orm:"column(bg_img);size(200);description(背景图);default:('')"`
	// 头像
	Avatar string `orm:"column(avatar);size(400);description(头像);default:('')"`
	// 生日
	BirthDay string `orm:"column(birth_day);description(生日);"`
	// 性别 0女 1男 2 保密
	Male int `orm:"column(male);size(1);description(0女 1男 2 保密);default(1);"`
	// 微信ID
	OpenId string `orm:"column(open_id);size(60);description(微信登录ID);default('');"`
	// 删除状态 0 未删除 1 删除
	IsDeleted int `orm:"column(is_deleted);size(1);description(0 未删除 1 删除);default(0);"`
	// 激活 0 未激活 1 激活
	Active int `orm:"column(active);size(1);description(0 未激活 1 激活);default(1);"`
	// 是否禁止 0 未禁止 1 禁止
	Forbidden int `orm:"column(forbidden);size(1);description(0 未禁止 1 禁止);default(0);"`
	// 创建时间
	CreateTime time.Time `orm:"column(create_time);auto_now_add;type(datetime);description(创建时间);"`
	// 更新时间
	UpdateTime time.Time `orm:"column(update_time);auto_now;type(datetime);description(更新时间);"`
	// AuthorFlag int       // 作者 0否 1是
	// BbsNum     int       // 文章数
	// CourseNum  int       // 学习课程数
	// FansNum    int       // 粉丝数
	// GzsNum     int       // 关注数
	// Uuid       string    // 用户唯一标识
	// VipFlag    int       // vip身份标识 1 游客 2 vip  3 svip
	// VipTime    time.Time // vip的过期时间
	// Cron       float32   // 钱包余额
	// Income     float32   // 提现收入
	// Province   string    // 省份
	// City       string    // 城市
	// Job        string    // 职业
	// Realname   string    // 真实姓名
	// Idcard     string    // 身份证
	// Idcardimgf string    // 身份证正面
	// Idcardimgc string    // 身份证反面
	// Alipaycode string    // 支付宝
	// Weixincode string    // 微信号
	// Bankcode   string    // 银行卡
	// Bankimg    string    // 银行封面
	// Bankaddr   string    // 银行卡开户行
	// SystemId   int       // 系统ID
}

func (u *User) TableName() string {
	return "xk_user"
}
